home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1996 May / EnigmA AMIGA RUN 07 (1996)(G.R. Edizioni)(IT)[!][issue 1996-05][EARSAN CD VI].iso / progs / utilmisc / abacus / abacus.hlp < prev    next >
Text File  |  1995-03-06  |  76KB  |  1,483 lines

  1. INSTRUCTION MANUAL for ABaCUS (Analysis of Blake's Conjecture Using
  2. Simulations) by Arlin Stoltzfus and David Spencer.  Manual version 0.48, 5
  3. July 1994 (by A. Stoltzfus)
  4.  
  5. ==========================================================================
  6. CONTENTS:
  7. ==========================================================================
  8.  
  9. 0. HOW TO USE THIS INSTRUCTION MANUAL
  10.  
  11. I. ABOUT ABACUS
  12.  
  13.     A. BASIC DESCRIPTION
  14.     B. HARDWARE AND SOFTWARE REQUIREMENTS FOR THE PRE-COMPILED VERSION
  15.     C. COMPILING THE ABACUS CODE FOR ANOTHER ENVIRONMENT
  16.     D. CITING ABACUS IN PUBLISHED WORK; PROPRIETARY CLAIMS
  17.  
  18. II.  TUTORIAL: AN ANALYSIS OF CYTOCHROME C DATA
  19.     
  20.     A. STAGE 1: PREPARATION OF THE CYTOCHROME C DATA
  21.     B. STAGE 2: CREATING THE NECESSARY DATA FILES
  22.     C. STAGE 3: ANALYZING CORRESPONDENCES WITH THE CYTOCHROME C DATA SET
  23.  
  24. III. GENERAL STEPWISE INSTRUCTIONS
  25.  
  26.     A. STAGE 1: COLLATE THE DATA PRIOR TO USING ABACUS
  27.     B. STAGE 2: ENTER THE OBSERVED DATA AND SAVE THEM TO FILES
  28.     C. STAGE 3: EVALUATE CORRESPONDENCES  
  29.  
  30. IV.  DETAILED COMMENTS
  31.  
  32.     A. INTRONS, EXONS AND INFERRED ANCESTRAL EXONS
  33.     B. ARRAYS: CREATING, CONVERTING, SAVING AND LOADING
  34.     C. BE CAREFUL WHEN ENTERING DATA
  35.     D. LOADING ATOMIC COORDINATES FROM A PDB FILE
  36.     E. GENERATING REFERENCE GENE DATA
  37.     F. SCORING CORRESPONDENCES
  38.     G. EVALUATING THE SIGNIFICANCE OF A CORRESPONDENCE
  39.     H. SAVING RESULTS; FURTHER ANALYSIS OF SCORES; etc
  40.     I. PLOTTING DIAGONAL PLOTS AND EXON PLOTS
  41.  
  42. V.  ADDITIONAL DETAILS
  43.  
  44.     A.  HARD LIMITS ON PARAMETERS
  45.     B.  THE RANDOM NUMBER GENERATOR
  46.     C.  EXPLANATION OF THE SETTINGS MENU
  47.     D.  HOW TO CONTACT THE PDB
  48.     
  49. VI.  REFERENCES
  50.  
  51. ==========================================================================
  52. 0. HOW TO USE THIS INSTRUCTION MANUAL
  53. ==========================================================================
  54.  
  55. 0.A.  IF YOU DON'T HAVE AN EXECUTABLE PROGRAM.  Try out the DOS or Sun
  56. executable or read section I below to be sure that ABaCUS can solve the
  57. type of problem that you are interested in.  If so, read section I.C.
  58. below, then open the header file "abacus.h" with a text editor.  Read the
  59. instructions therein, make the necessary changes, and proceed.  You may 
  60. also want to check out section V.A. to help in tailoring ABaCUS to your
  61. needs.
  62.  
  63. 0.B.  IF YOU ALREADY HAVE AN EXECUTABLE PROGRAM.  First, read section I
  64. (short).  Next, be sure that the the executable ("abacus.exe" in DOS and
  65. "abacus" in SunOS) and the data file "pdb1ccrs.txt" are on your hard drive,
  66. in the same directory.  For DOS users who wish to use graphics, be sure to
  67. include the graphics interface file (with the ".bgi" extension) appropriate
  68. for your hardware.  Then read and perform the tutorial excercises, using
  69. ABaCUS.  Plan on spending 30-60 minutes on the tutorial.  This should be
  70. enough to familiarize you with the steps involved in preparing and
  71. analyzing data.
  72.  
  73. O.C.  IF YOU'RE NOT SURE ABOUT SOMETHING.  This document represents a large
  74. amount of work devoted to explaining how ABaCUS works and how to use it.
  75. Please consult this manual for explanations of how data are handled and how
  76. operations are carried out.  For questions about the meaning of statistical
  77. results of simulations, ask your local statistical consultant.  For
  78. bit-twiddly questions, consult the code, which is heavily commented.  For
  79. questions about the interpretation of results in the context of the
  80. evolution of introns, a good place to start is the general review by
  81. Doolittle (1987).  Also, see Gilbert and Glynias (1994) and Stoltzfus, et
  82. al. (1994).  As a last recourse, ask the authors for help, preferably by
  83. E-mail, at one of the addresses listed below.  If you are carrying out a
  84. research project involving correspondences between split gene structure and
  85. protein structure, we would be happy to hear about it, even if you don't
  86. have any questions, and even if you don't find any correspondences.
  87.  
  88. Dr. Arlin Stoltzfus and Dr. David Spencer
  89. Canadian Institute for Advanced Research
  90. Program in Evolutionary Biology
  91. Department of Biochemistry
  92. Dalhousie University
  93. Halifax, Nova Scotia  B3H 4H7  CANADA
  94.  
  95. internet: arlin@ac.dal.ca 
  96. phone: 902-494-3569 
  97. facsimile: 902-494-1355
  98.  
  99.  
  100. ==========================================================================
  101. I. ABOUT ABACUS
  102. ==========================================================================
  103.  
  104. I.A. BASIC DESCRIPTION
  105.  
  106. ABaCUS is a no-frills program to investigate the significance of the
  107. putative correspondence between exons and units of protein structure. This
  108. type of analysis takes the form of an attempt to eliminate the reference
  109. hypothesis (sometimes called a "null" hypothesis) that no correspondence
  110. exists.  A reference hypothesis in this case consists of a reference model
  111. for random gene structures, and a scoring rule for quantifying
  112. correspondences (in principle, a test could be done by generating random
  113. protein structures instead of random gene structures, but this is
  114. impracticable).  ABaCUS creates and reads files containing observed data
  115. supplied by the user, then uses this information to generate reference
  116. genes according to one of several available models.  The observed and
  117. reference genes are then scored according to a correspondence rule
  118. designated by the user, and the scores are compared in order to determine
  119. whether the reference hypothesis (i.e., no correspondence) can be rejected.
  120.  
  121. I.B. HARDWARE AND SOFTWARE REQUIREMENTS FOR THE PRE-COMPILED DOS VERSION
  122.  
  123. The compiled program "ABaCUS.exe" runs in DOS.  The minimal DOS platform is
  124. a 286-based PC-compatible computer with a monochrome monitor.  Monochrome
  125. or color graphics are possible (drivers are provided for EGA, VGA, CGA and
  126. Hercules).  If you are not sure which driver to use, just include all of
  127. the drivers in the same directory (ABaCUS will automatically use the
  128. correct one).  There is also a precompiled SunOS version, which does not
  129. have graphics and thus requires no additional files.
  130.  
  131. I.C. COMPILING THE ABACUS CODE FOR ANOTHER ENVIRONMENT
  132.  
  133. All of the important parts of ABaCUS are portable to non-DOS environments.
  134. The graphics portion-- which is available only in the DOS environment, and
  135. is dependent on the Borland graphics library-- is interesting but not
  136. central to the task of hypothesis-testing.  An ANSI-C-compliant version of
  137. ABaCUS has been compiled and run in BSD UNIX (using the Gnu C compiler
  138. 2.4.0 on a Sun running SunOS 4.1.2; also on a NeXT).  To compile ABaCUS,
  139. one needs the main code block "abacus.c" and the header file "abacus.h".
  140. All alterations are made within the header file, which contains
  141. instructions for conditional compilation.
  142.  
  143. If you have gotten an ABaCUS package from an Internet server, the ".readme"
  144. file associated with the package will give further information on
  145. compilation for specific environments.
  146.  
  147. I.D.  CITING ABACUS IN PUBLISHED WORK; PROPRIETARY CLAIMS
  148.  
  149. A manuscript describing ABaCUS is in preparation (Stoltzfus and Spencer,
  150. 1998).  For now, please cite "A. Stoltzfus and David Spencer, personal
  151. communication" as the source of ABaCUS, and refer to Stoltzfus, et al.
  152. (1994) for its use in analyzing correspondences.
  153.  
  154. Because ABaCUS is a scientific application designed to aid in resolving a
  155. biological question, it is available to the general public.  The code has
  156. no copyright at present, and may be distributed freely.  We encourage
  157. interested biologists to analyze their data using ABaCUS, and to report the
  158. results (whether positive or negative) in trade journals.  We would be
  159. delighted to receive a preprint or reprint of any manuscript describing
  160. analyses performed using with ABaCUS.
  161.  
  162.  
  163. ==========================================================================
  164. II. TUTORIAL: AN ANALYSIS OF CYTOCHROME C DATA
  165. ==========================================================================
  166.  
  167. An analysis falls into three stages:
  168.  
  169.   A. gathering and collating observed data;
  170.  
  171.   B. creating data files using ABaCUS;
  172.  
  173.   C. evaluating correspondences using ABaCUS.
  174.  
  175. The user must supply the data (sequence information) and the tools (e.g.,
  176. an alignment program) to collate it.  ABaCUS provides the remaining
  177. accounting and computational tools.  Once the data are prepared, analyses
  178. can be carried out in a single session lasting from a few minutes to a few
  179. hours (depending on the complexity of the case and the computing power
  180. available).  The operations involved in each stage of a typical analysis
  181. are described in the tutorial and in section III below.
  182.  
  183. II.A. STAGE 1: PREPARATION OF THE CYTOCHROME C DATA
  184.  
  185. The data have already been prepared, as follows.
  186.  
  187. II.A.1. Protein structure.  The structure of rice cytochromeC in the file
  188. named "pdb1ccr.ent" was chosen (arbitrarily) from among three cytochrome C
  189. structures at the Brookhaven PDB that have a very fine resolution, of 1.5
  190. Angstroms.  In addition to atomic coordinates, the file pdb1ccr.ent
  191. contains a list of the boundaries of alpha-helices (there are no
  192. beta-strands in cytochrome C).
  193.  
  194. II.A.2. Intron-containing sequences.  Kemmerer, et al (1991a, 1991b) listed
  195. a total of 5 distinct intron positions found in cytochrome C genes of rice,
  196. drosophila, arabidopsis, human, chicken, and mouse.  A search for
  197. additional distantly related intron-containing sequences in GenBank yielded
  198. one gene, from Aspergillus nidulans, containing two intron positions
  199. (Raitt, et al., 1994).  Alignments of the inferred amino acid sequences of
  200. all of these intron-containing genes indicate that there are a total of 6
  201. distinct intron positions, which can be represented in a minimal set of
  202. four sequences, from Arabidopsis, rice, chicken, and Aspergillus.  It is
  203. possible that this set does not represent all currently known distinct
  204. intron positions, since there are literally hundreds of cytochrome C
  205. sequences in GenBank, and my search procedure did not involve screening
  206. each entry for potentially novel intron positions.
  207.  
  208. II.A.3.  Alignment with reference protein.  The complete rice sequence
  209. (corresponding to the crystal structure) contains 111 residues, but only
  210. the latter 103 residues align with other cytochrome C sequences. Therefore,
  211. a text editor was used to delete data for the first 8 residues: the
  212. resulting shortened file is called "pdb1ccrS.TXT".  This file has been
  213. included with the ABaCUS package.  The positions of the 6 introns relative
  214. to the canonical-length sequence of rice cytochrome C are:
  215.  
  216.  
  217. source            intron
  218. taxon            position
  219.  
  220. Arabidopsis        12-0
  221. rice                29-1
  222. animals            56-1
  223. Arab., Asp.        65-0
  224. rice                74-0
  225. Aspergillus        96-2
  226.  
  227. The positions of alpha-helices relative to the canonical-length sequence of
  228. rice cytochrome C are:
  229.  
  230.                 left & right
  231. structure            boundaries (inclusive)
  232.  
  233. helix1            2 to 14
  234. helix2            49 to 55
  235. helix3            60 to 69
  236. helix4            70 to 75
  237. helix5            87 to 103
  238.  
  239.  
  240. II.B. STAGE 2: CREATING THE NECESSARY DATA FILES
  241.  
  242. II.B.1.  Enter the observed intron positions.  Enter the size of the gene
  243. as 103 codons and the number of introns as 6.  Then input the numbers in
  244. the table of intron positions above.  When entering the intron positions,
  245. separate the codon and phase using one or a few spaces.  Use the "v=VIEW"
  246. command to see the intron positions.  The console should look like this:
  247.  
  248. OBS:       33    85    166    192    219    287
  249. SCORE:      0.0    0.0    0.0    0.0    0.0    0.0
  250.  
  251. This means that the first intron is after the 33rd coding nucleotide of the
  252. canonical-length mRNA, that is, the 33rd inter-nucleotide site (an mRNA of
  253. N nucleotides has N-1 possible intron positions, or inter-nucleotide
  254. sites).  If the intron positions entered were correct, then save them to a
  255. file named "cytobs.int" (short for "cytochromeC observed introns").
  256.  
  257. If the intron positions entered were correct, and the number of codons
  258. entered was correct, then ABaCUS has also created a correct set of exon
  259. sizes.  The set should look like this:
  260.  
  261. OBS:      11    18    27    8    9    23    7
  262. SCORE:      0.0    0.0    0.0    0.0    0.0    0.0    0.0
  263.  
  264. This means that the first 11 residues of the protein are assigned to the
  265. first exon, the next 18 to the second exon, and so on.  Notice that there
  266. are 7 exon sizes for 6 intron positions, and that exon sizes are in codons
  267. (or residues), while intron positions are on a nucleotide scale.  If the
  268. exon sizes are correct, save the exon sizes to a file called "cythyp.exn"
  269. (short for "cytochrome hypothetical exons").
  270.  
  271. II.B.2.  Enter the boundaries of the 5 helices.
  272.  
  273. Go to the "d=DISCRETE" elements submenu, and choose "e=ENTER".  Enter the
  274. gene size as 103 codons, and enter the left and right boundaries of helix1,
  275. using the numbers in the table above.  That is, enter 2 and 14 for the left
  276. and right boundaries of helix1.  Continue ("c=continue") entering elements
  277. until all five have been entered.  Then choose "d=done".  Choose "v=view"
  278. to view the array, which will be a string of 1's and 0's.  If the secondary
  279. structure elements were entered correctly, the bottom of the display should
  280. show the following message:
  281.  
  282. The average score per position is 0.500000.
  283.  
  284. This is the average score for positions in the array.  In this case, it
  285. happens (quite by chance!) that exactly half of the 308 possible intron
  286. positions (103 codons --> 309 bp --> 308 inter-nucleotide sites) are
  287. internal to structural elements.  If the elements were entered correctly,
  288. save this array to a file named "cytsec1.arr".
  289.  
  290. II.B.3.  Convert the maximum array score.
  291.  
  292. Now choose "c=convert" to convert the array to a new maximum score.  Enter
  293. 9999 for the maximum score, and save the converted array to a file called
  294. "cytsecm.arr".
  295.  
  296. The array created in step II.B.2 had a maximum score of 1, and could be
  297. used to give binary scores to introns: that is, 0 is assigned to intron
  298. positions between structural elements, and 1 is assigned to intron
  299. positions within structural elements.  Converting the array to a high
  300. maximum score creates a graduated array in which each number in the array
  301. is the distance in bp to the nearest element-free region.  Recall that the
  302. first helix began at residue 2.  Therefore, the first three intron
  303. positions, 1-1, 1-2, and 2-0, fall in an inter-helix region, whereas the
  304. next introns, 2-1, 2-2, 3-0, etc are successively more deeply embedded in
  305. helix1.  The first 65 numbers (representing the inter-nucleotide sites in
  306. the first 22 codons) should look like this:
  307.  
  308. 0 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 19 18 17 16 15 14 13
  309. 12 11 10 9 8 7 6 5 4 3 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
  310.  
  311. The distance scores continue to increase until site 8-2 (19 nucleotides
  312. from the carboxy end of helix1), then they decrease as the carboxy end of
  313. helix1 is approached.  The last site that can be considered "inside" helix1
  314. is 14-2 (1 nt from the carboxy end of helix1); the next site, 15-0, is
  315. "outside" helix1, and has a score of 0.
  316.  
  317. Although there are some circumstances in which one wishes to limit the
  318. maximum score (e.g., to 9 or 15), one usually wants a completely graded
  319. array, and 9999 is sufficiently high to ensure that the maximum achievable
  320. score will be reached in any gene (unless its > 19998 bp in length!).
  321.  
  322.  
  323. II.B.3.  Load the crystal structure of rice cytochrome C.
  324.  
  325. Go to the "a=ATOMIC COORDINATES" submenus and choose "l=LOAD".  Enter the
  326. name of the file, which is "pdb1ccrs.txt".  After the file has been read, a
  327. warning message will appear, indicating that the numbering in the file was
  328. non-consecutive. This does not necessarily mean that the file has been read
  329. incorrectly-- for instance, the chicken TPI crystal structure (PDB file
  330. 1tim) has no residue #3 (the numbering in the file is 1, 2, 4, 5, 6 . . .
  331. 246, 247, 248, but there are really only 247 residues). In the case of
  332. "pdb1ccrs.txt", the first 8 residues of pdb1ccr.ent were deleted, and the
  333. 103 residues in "pdb1ccrs.txt" are thus numbered 9-111 instead of 1-103.
  334. The atomic coordinates maintained in memory by ABaCUS have the correct
  335. numbers, 1-103, because ABaCUS assigns its own, consecutive, numbering
  336. system as it reads the file.
  337.  
  338. Now quit ABaCUS, and find the file "calpha.xyz".  This file, which was
  339. written automatically by ABaCUS when "pdb1ccrs.txt" was read, contains only
  340. the C-alpha coordinate lines from the original file, and thus the file is
  341. 10-50 times smaller than the original.  Change the name of the file from
  342. "calpha.xyz" to "pdb1ccrs.xyz".  Since we know that the original file has
  343. been read correctly, we can use "1ccrsca.xyz" in place of it, to save
  344. space.  Every time ABaCUS loads a crystal structure, it creates a file
  345. called "calpha.xyz" with the C-alpha data.  This file can be used to check
  346. whether the crystal structure has been read correctly and, if so, it can be
  347. used in place of the original PDB file.
  348.  
  349. II.C. STAGE 3: ANALYZING CORRESPONDENCES WITH THE CYTOCHROME C DATA SET
  350.  
  351. Below are instructions for testing 3 hypotheses about the cytochrome C
  352. data.  Each hypothesis involves a choice of a scoring rule and a reference
  353. gene model.  The general form of each hypothesis will be that the observed
  354. gene data do not correspond (as quantified using the chosen scoring rule)
  355. to protein structure better than random introns or exons (generated by the
  356. reference model).
  357.  
  358. II.C.1.  Load the observed data files.  Restart ABaCUS, and load the exon
  359. data file, "cythyp.exn", using the "l=LOAD" command in the main menu; load
  360. the array "cytsecm.arr" using the equivalent command in the "d=DISCRETE"
  361. submenu; and load the atomic coordinates in "1ccrsca.xyz" (or in
  362. "pdb1ccrs.txt", if you prefer to use the original file) using "l=LOAD" in
  363. the "a=ATOMIC COORDINATES" submenu.  We'll load the intron position data
  364. later.
  365.  
  366. II.C.2.  Generate reference genes.
  367.  
  368. II.C.2.a. Generate reference intron positions.
  369.  
  370. Go to the "r=REFERENCE" genes submenu and choose "u=UNIFORM" intron
  371. positions.  Unless you loaded the intron position file in step 1 above,
  372. ABaCUS gives an error message to the effect that reference intron positions
  373. cannot be generated unless observed intron positions have been loaded.  The
  374. random reference gene data must reflect the properties of the observed gene
  375. data-- same number of introns, same gene length-- and therefore ABaCUS
  376. requires observed intron positions before it will generate reference intron
  377. positions.  Exons are treated separately, but they follow the same rules.
  378.  
  379. Go back to the main menu and load the intron position data from
  380. "cytobs.int" then return to the "r=REFERENCE" genes submenu.  Using
  381. "u=UNIFORM", generate 1000 sets of uniform random intron positions, with
  382. the minimum inter-intronic distance set to 1 bp.  Specifically, this model
  383. of random intron positions creates 1000 sets, each with 6 non-identical
  384. positions randomly drawn with uniform probabilities per inter-nucleotide
  385. site.  This is the reference model for randomly placed introns.
  386.  
  387. II.C.2.b.  Generate reference exon sizes.
  388.  
  389. Go to the "r=REFERENCE" submenu and choose "p=PERMUTE" exon sizes.  Ask for
  390. 2 sets of permuted exon sizes.  Go back to the main menu and view the exon
  391. sizes on the console.  It is easy to see that each set of exons contains
  392. exactly the same sizes as the other sets-- the only difference is in the
  393. order.  Now generate another two sets and view them by returning to the
  394. main menu and choosing "v=VIEW".  Notice that there are not 4 reference
  395. sets, but only 2.  This is because ABaCUS erases the previous list of 2
  396. sets and replaces it with the new list of 2 sets.  ABaCUS can only keep ONE
  397. list of random exons in memory, and the list is erased and rewritten every
  398. time reference genes are generated.  Intron positions are stored
  399. separately, but they follow the same rule.
  400.  
  401. Go back to the reference genes submenu and generate 1000 sets of randomly
  402. permuted reference exon sizes.  This is the reference model for exon sizes.
  403.   
  404. II.C.3. Assign scores and evaluate the reference hypothesis.
  405.  
  406. II.C.3.a. Assign scores and evaluate centrality of intron positions.
  407.  
  408. This hypothesis, which we could call HC, for hypothesis regarding
  409. centrality, is that the intron positions do not correspond to central
  410. locations in the three-dimensional crystal structure better than randomly
  411. placed introns.  The alternative is that introns tend to correspond to
  412. positions at the center of the protein.  To carry out this test, we need
  413. observed intron positions, randomly placed intron positions, a crystal
  414. structure, and a method of measuring centrality.  The first three things
  415. are already taken care of. Now all we need to do is measure the centrality
  416. of the observed and random intron positions, compare them, and draw a
  417. conclusion.
  418.  
  419. Go to the "a=ATOMIC COORDINATES" menu and choose "c=CENTRALITY".  Indicate
  420. that cytochrome C has only a single globular domain, and choose rule #4
  421. (this is the most logical rule for centrality; the other rules are not
  422. generally useful).  ABaCUS will assign centrality scores to all sets of
  423. observed and reference introns, using the crystal structure in memory.  Now
  424. return to the main menu, choose "t=TEST" and examine the results (add a
  425. comment at the prompt, if desired).  Can the reference hypothesis, HC, be
  426. excluded?
  427.  
  428. II.C.3.b.  Assign scores and evaluate avoidance of secondary structures.
  429.  
  430. The second hypothesis, HAS, is that the intron positions do not tend to
  431. avoid secondary structural elements better than randomly placed intron
  432. positions.  The alternative is that intron positions tend to fall between
  433. secondary structures, or at least very close to their ends.  The observed
  434. and random intron positions have already been generated (they are still in
  435. memory from the previous test).  The scoring rule to be used in this test
  436. consists of the scores in the array "cytsecm.arr".
  437.  
  438. Go to the "d=DISCRETE ELEMENTS" submenu, and choose "a=ASSIGN" to assign
  439. scores to the intron positions using the scoring array in memory.  Since
  440. the array created earlier holds the distance in bp from each potential
  441. intron position to the nearest inter-element boundary, this is the score
  442. that the introns will receive.  Return to the main menu to finish the test
  443. by choosing "t=TEST".
  444.  
  445. At this point, take a break to notice several things about scoring rules.
  446. First, notice that the score assigned to a gene is the average of the
  447. constituent exon (or intron) scores.  This is true for all of the scoring
  448. rules used by ABaCUS.  Second, in all of the scoring rules used by ABaCUS,
  449. a lower scores indicates a better correspondence.  For centrality, a low
  450. score means greater proximity to the center (the center of mass, to be
  451. exact) of the protein; for avoidance of secondary structure, a low score
  452. means that the distance to the nearest interÐelement region is small-- the
  453. introns are within, or close to, inter-element regions.
  454.  
  455. Also, notice some things about the ABaCUS environment.  The same list of
  456. 1000 sets of reference intron positions was used in two different tests.
  457. This is perfectly valid, and is actually preferable to generating separate
  458. sets for each test.  The sets of intron positions stayed in memory, but the
  459. scores changed when a new scoring rule was chosen.
  460.  
  461. II.C.3.c.  Assign scores and evaluate the extensity of exon-encoded
  462. peptides.
  463.  
  464. The third hypothesis, HE, is that the peptides encoded by exons are no less
  465. extended than those encoded by random exons.  The alternative is that
  466. exon-encoded peptides tend to be non-extended or compact.  The observed
  467. data are already loaded, and the reference model (in this case, random
  468. permutations of the observed order of exon sizes) has already been chosen.
  469. It remains to choose a scoring rule, assign scores to the observed and
  470. reference exons, and evaluate the hypothesis.
  471.  
  472. Go to the "a=ATOMIC COORDINATES" submenu and choose "e=EXTENSITY" scores.
  473. Assign scores to the exons using rule "r=radius of gyration" (this is, in
  474. our opinion, the most sensible rule for extensity: the other rules are
  475. explained in section III).  Now return to the main menu and choose "t=TEST"
  476. to evaluate the hypothesis.
  477.  
  478. Before quitting, take a moment to see how ABaCUS maintains records on past
  479. and current experiments.  This information is accessed using the "i=INFO"
  480. command in the main menu.  Choose this command, then choose "p=past" to see
  481. the results of the three experiments that have been performed.  Now choose
  482. "i=INFO" again and choose "c=current" to see descriptions of the data that
  483. are now in memory.  In general, the "i=INFO" functions are useful for
  484. keeping track of what has and has not been done during a session.
  485.  
  486. When "q=QUIT" is chosen from the main menu, you will prompted for the name
  487. of a file in which to save the results of the experiments performed.  Name
  488. the file "tutorial.sum".  The file will contain the information on past
  489. experiments that we viewed above.
  490.  
  491. ===> This is the end of the tutorial.  Section III provides generalized
  492. instructions for each of the steps done in the tutorial, and Sections IV
  493. and V provide details.
  494.  
  495. ==========================================================================
  496. III. GENERAL STEPWISE INSTRUCTIONS
  497. ==========================================================================
  498.  
  499. III.A. STAGE 1: COLLATE THE DATA PRIOR TO USING ABACUS
  500.  
  501. Most of the effort in analyzing gene-protein correspondences will be spent
  502. preparing an observed case for analysis.  Plan to devote a large amount of
  503. time to carrying out the following tasks: searching sequence databases to
  504. find known intron-containing sequences, checking the primary research
  505. literature to be sure that intron positions are correctly assigned, and
  506. aligning sequences with each other, as well as with protein structural
  507. elements.  The following sequence of steps is recommended:
  508.  
  509. III.A.1.  Choose a protein for which intron-containing genes have been
  510. sequenced, and for which a crystal structure is known.
  511.  
  512. III.A.2.  Obtain a file containing atomic coordinates of the protein from
  513. the PDB.  If there are several homologous structures to choose from, pick
  514. the one that is the best characterized (best refinement, most additional
  515. information on structural features).
  516.  
  517. III.A.3.  Make a list of boundaries of secondary structures and other
  518. structural elements.  For example, PDB files often include a list of the
  519. boundaries of secondary structural elements.
  520.  
  521. III.A.4.  Search sequence databases to find all the known intron-containing
  522. genes.  Align the inferred amino acid sequences with each other and with
  523. the protein whose structure has been determined.
  524.  
  525. III.A.5.  Make a list of all known intron positions in codon-phase notation
  526. relative to the protein whose structure has been determined.  That is, for
  527. each intron, write down the corresponding residue number in the protein
  528. (each codon corresponds to a residue in the reference protein) and its
  529. phase (0, 1 or 2).  An intron between codons 59 and 60 is 60-0 (codon 60,
  530. phase 0) in the notation of Dibb & Newman (1989).
  531.  
  532. III.A.6.  If an analysis of extensity is to be done, make a list of
  533. inferred ancestral intron positions.  This list will be the same as the
  534. list of observed intron positions unless there are intron positions that
  535. are not separated by the first nucleotide of any codon (e.g., 29-1 and
  536. 29-2, or 29-1 and 30-0), or unless an "intron sliding" assumption is made
  537. on the basis of some looser criterion (for example, see Gilbert & Glynias,
  538. 1994). For further explanation, read the entire section IV.A., entitled
  539. INTRONS, EXONS AND INFERRED ANCESTRAL EXONS.
  540.  
  541. Before starting ABaCUS, double-check that all positional data are numbered
  542. according to the same codon/residue numbering scheme, based on a multiple
  543. sequence alignment.  For example, suppose that I am using the atomic
  544. coordinates and secondary structure boundaries for bovine dibibliomuctase.
  545. If the 199th codon of the rat dibibliomuctase gene has an intron in phase
  546. 1, and if the multiple sequence alignment shows that the encoded residue is
  547. homologous to the 193th residue of the bovine sequence, then that intron
  548. should be designated as position 193-1, not 199-1.  If the bovine protein
  549. has a beta-strand at 185-191 and an alpha-helix at 195-211, then the
  550. incorrect intron assignment would place the intron in the middle of the
  551. alpha-helix, instead of where it belongs, between the beta strand and
  552. alpha-helix.  Check and double check the data (see section IV.C. BE CAREFUL
  553. WHEN ENTERING DATA).  Obtaining a low-quality result by doing a
  554. sophisticated analysis on low-quality data is called "garbage in, garbage
  555. out."
  556.  
  557.  
  558. III.B. STAGE 2: ENTER THE OBSERVED DATA AND SAVE THEM TO FILES
  559.  
  560. NOTE: Before you start ABaCUS, make sure that the relevant crystal
  561. structure file (if necessary) and the executable file or files (in DOS,
  562. look for "abacus.exe" and either "egavga.bgi" or another appropriate BGI
  563. graphics driver) are all in the same directory. Also, have ready the lists
  564. of intron positions and structural boundaries. To launch ABaCUS, type
  565. "abacus".
  566.  
  567. NOTE: The files created in this step should be kept in the same directory
  568. as abacus.exe.  They can then be read back at any time.  Its a good idea to
  569. keep a list of the file names and a description of what each file contains,
  570. unless you are running ABaCUS within a console (e.g., DOS in Windows) and
  571. can examine files from the shell without quitting ABaCUS.
  572.  
  573. III.B.1.  Enter the observed intron positions, then save the intron
  574. positions to a file with the ".int" extension.  Enter the inferred
  575. ancestral intron positions, then save the resulting inferred ancestral
  576. *exon sizes* to a file with the ".exn" extension.  To find out more about
  577. intron positions and exon sizes, and why they are treated separately, see
  578. section IV.A. INTRONS, EXONS AND INFERRED ANCESTRAL EXONS.
  579.  
  580. III.B.2.  Enter the boundaries of structural elements, then save them to a
  581. file with the ".arr" extension.  If desired, convert the maximum penalty in
  582. the scoring array to a different value, then save the converted array with
  583. a different name.  Repeat this process for each different type of
  584. structural element that is being considered.  For more information, see
  585. section IV.B. on arrays.
  586.  
  587. III.B.3.  Attempt to load the crystal structure file.  If there is no
  588. apparent problem, check the crystal structure by viewing its diagonal plot
  589. (if you have the DOS graphics version), or by comparing the cryptic output
  590. file "calpha.xyz" (which contains only the CA lines) with the original
  591. file.  If any discrepancy is noted, see section IV.D. on loading atomic
  592. coordinates from a pdb file, and correct any problems before continuing.
  593.  
  594.  
  595. III.C. STAGE 3: EVALUATE CORRESPONDENCES
  596.  
  597. The intron-based analyses in III.C.1 and III.C.2 below should ideally be
  598. done together (in either order), since the same set of reference intron
  599. positions can then be used for both analyses (this is what was done in the
  600. tutorial excercise).  The exon-based analysis, section III.C.3, can be done
  601. before or after the intron-based analyses.
  602.  
  603. III.C.1. Evaluate intron positions with respect to structural elements:
  604.  
  605.     a.  load the observed set of intron positions;
  606.     b.  generate reference sets of uniform or PIID introns;
  607.     c.  load the structural element scoring array;
  608.     d.  score the introns using the scoring array;
  609.     e.  evaluate the scores;
  610.     
  611. Repeat steps steps c-e as required for other types of structural
  612. elements (there is no need to generate a new set of reference intron
  613. positions for each analysis).
  614.  
  615. III.C.2.    Evaluate intron positions with respect to centrality.  You will
  616. be prompted in step (d) to answer whether the protein has multiple globular
  617. domains and, if the answer is "yes", you will be prompted to supply the
  618. number and boundaries of the globular domains.  Steps (a) and (b) will not
  619. be necessary if they have already been performed:
  620.  
  621.     a.  load the observed set of intron positions;
  622.     b.  generate reference sets of uniform or PIID introns;
  623.     c.  load the crystal structure;
  624.     d.  score the introns by centrality;
  625.     e.  evaluate the scores.
  626.  
  627. III.C.3.  Evaluate the extensity of exon-encoded peptides.
  628.  
  629.     a.  load the inferred ancestral exon sizes;
  630.     b.  generate reference sets of lognormal or permuted exon sizes;
  631.     c.  load the crystal structure (if not already loaded);
  632.     d.  score the exons by extensity of exon-encoded peptides;
  633.     e.  evaluate the scores.
  634.  
  635. III.C.4.  Save the results.  If any experiments have been performed,
  636. choosing "q = quit" will give you the option of saving a numbered list of
  637. experiment summaries to disk.  Name the file using the ".sum" extension.
  638.  
  639.  
  640. ==========================================================================
  641. IV.  DETAILED COMMENTS
  642. ==========================================================================
  643.  
  644. IV.A. INTRONS, EXONS AND INFERRED ANCESTRAL EXONS
  645.  
  646. IV.A.1.  How intron positions are handled.
  647.  
  648. Intron positions are entered by the user in codon-phase notation (Dibb and
  649. Newman, 1989) and are then transformed to a scale of nucleotides, such that
  650. the intron is given the number of the gene nucleotide that precedes it. The
  651. formula is thus:
  652.  
  653. position = 3 * (codon - 1) + phase
  654.  
  655. For example, if the gene is 146 codons long, then it has 438 nucleotides
  656. and 437 possible intron positions. Intron 68-0 (codon-phase) is at position
  657. 201 (bp scale). Thus, the intron positions used by ABaCUS exactly preserve
  658. the information entered by the user.  
  659.  
  660. IV.A.2.  How exon sizes are handled.
  661.  
  662. Exon sizes are only used in conjunction with a crystal structure for
  663. evaluating the extensity of exon-encoded peptides. By contrast to intron
  664. positions, exon sizes are always rounded to integral numbers of codons,
  665. such that a partial codon is assigned entirely to the 5' exon.  Therefore,
  666. if the first intron in a gene is at position 38-0, the first exon will be
  667. 37 codons long, but if the first intron is at 38-1 (or 38-2 or 39-0), the
  668. first exon is considered to be 38 codons long.
  669.  
  670. IV.A.3.  Why exons and introns are handled differently.  
  671.  
  672. The reason that exon sizes are NOT in bp, but in codons, is that the
  673. exon-based scoring done by ABaCUS utilizes the atomic coordinates of
  674. alpha-carbons.  Each exon must be found to correspond to a unique set of
  675. alpha-carbons, and thus no resolution is to be gained by expressing exon
  676. sizes in bp.  Using integral numbers of codons also simplifies several
  677. procedures, especially the generation of lognormally distributed exon
  678. sizes.  
  679.  
  680. For the case of intron positions, using a nucleotide scale allows
  681. potentially useful resolution with regard to the boundaries of structural
  682. elements: for instance, if there is a helix encoded by codons 9 to 16, then
  683. there is a non-arbitrary (though possibly trivial) sense in which introns
  684. at 9-0 and 17-0 DO NOT interrupt the helix, whereas introns just at 9-1 and
  685. 16-2 DO interrupt the helix.  By contrast, in deciding how exons correspond
  686. to sets of C-alpha carbons, we can only make an arbitrary choice about
  687. whether 9-0 and 9-1 both separate residue 8 from residue 9, or whether 9-1
  688. should be treated as though it separates residue 9 from residue 10.
  689.  
  690. IV.A.4.  Prohibited exon sizes.
  691.  
  692. Any listing of intron positions is allowable, as long as the positions are
  693. entered consecutively and they do not fall outside the stated boundaries of
  694. the gene.  However, some allowable configurations of intron positions
  695. cannot be converted by ABaCUS into exon sizes, since exon sizes must be
  696. whole numbers.  For instance, if the user enters intron positions at 245-1
  697. and 246-0, the exon sizes will not be calculated correctly, since both of
  698. these introns would (by the rule described above in IV.A.2) separate
  699. residue 245 from 246.  If the exon size cannot be resolved as a whole
  700. number, then the user must change the set of intron positions accordingly.
  701. In this case, the solution would be to combine the two intron positions,
  702. and enter the average of the two values.  The evolutionary rationale for
  703. doing this is explained in the next two sections.
  704.  
  705. IV.A.5.  Inferred ancestral exon sizes.
  706.  
  707. According to the exon theory of genes, introns are lost but not gained.
  708. Therefore, each intron position is thought to represent an intron that
  709. physically existed when the gene was first assembled billions of years ago.
  710. In addition, each intron position has a unique set of scores for any
  711. conceivable correspondence metric, and the scores are unaffected by other
  712. intron positions (i.e., the score for position X is 5, whether or not there
  713. is another intron at position Y).  Consider some of the cytochrome C
  714. introns listed earlier:
  715.  
  716. Arab., Aspergillus        65-0
  717. rice                    74-0
  718. Aspergillus            96-2
  719.  
  720. The same ultimate conclusion would result if we analyzed each intron
  721. separately, and then combined the data, or if we list all of the introns
  722. together, since the positions are still the same (65-0, 74-0 and 96-2).
  723.  
  724. Exons sizes are not like this.  For instance, the real cytochrome C gene of
  725. Aspergillus has an exon extending from the first nt of codon 65 to the
  726. second nucleotide of codon 96.  According to the exon theory of genes, the
  727. introns flanking this exon must have existed in the ancestral gene, but the
  728. exon did not necessarily exist in the ancestral gene.  Instead, because an
  729. intron is found in rice at position 74-0, the observed exon from 65 to 96
  730. in Aspergillus would NOT have been in the ancestral gene (according to the
  731. exon theory of genes), but would have been divided by an intron at position
  732. 74-0.  By combining the intron positions from various genes, we infer a
  733. hypothetical set of ancestral exon sizes.  In this case, there are no real
  734. exons to correspond to any of the inferred ancestral exons (for instance,
  735. the gene from rice has an exon extending from the first nucleotide of codon
  736. 74 to the end of the gene, but in the inferred ancestral gene this would be
  737. broken by the intron at position 96-2).  This is why these exon sizes are
  738. referred to as *hypothetical* or *inferred* ancestral exon sizes.
  739.  
  740. IV.A.6.  Intron "sliding".
  741.  
  742. Advocates of the exon theory of genes maintain that intron positions within
  743. a few codons of each other must represent the same ancestral position that
  744. has migrated, or "slid", to different positions in descendent genes.
  745. Suppose that we find an intron position in cytochrome C at position 75-2,
  746. just 5 nt away from the intron position at 74-0 in rice cytochrome C.
  747. According to the exon theory of genes, the ancestral gene did NOT contain
  748. an exon extending from 74-0 to 75-2, and including an exon of this size in
  749. an analysis would therefore not be consistent with the assumptions of the
  750. exon theory of genes.  Instead, the ancestral gene is posited to have had a
  751. single intron position represented by both of the extant positions at 74-0
  752. and 75-2.
  753.  
  754. Invoking "sliding" creates two problems.  First, how does one decide when
  755. introns are too close to have co-existed in the ancestral gene?  Second,
  756. given a criterion for the first problem, how does one decide on the
  757. position of an ancestral intron that may have left descendants at
  758. non-identical positions?  In passing we note that (based on our own
  759. preliminary analyses) intron positions probably do not exhibit non-random
  760. clustering patterns (for an intuitive look at this problem, see section
  761. IV.E.3.a on the reference model of uniform intron positions), therefore no
  762. criterion of closeness can be justified.  Because of this, the whole issue
  763. of "sliding" is probably a non-issue based on a non-phenomenon: either
  764. "sliding" is so rampant that all clusters are dispersed to non-significant
  765. levels, or it is so rare that significant clusters of intron positions do
  766. not arise.
  767.  
  768. Nevertheless, in order to test the exon theory of genes, one must proceed
  769. in a manner that is consistent with its assumptions (even if they cannot be
  770. justified on prior grounds), and this means invoking "sliding" to explain
  771. away any excess intron positions.  The rigorous way to do this is to pick a
  772. precise rule and stick with it. Our rule is to consider all cases of intron
  773. positions within 3 codons of each other as cases of "sliding", and to
  774. estimate the position of the ancestral intron by taking the average of the
  775. extant intron positions.
  776.  
  777. Note well that the need to invoke sliding would only arise when performing
  778. tests directly on exon sizes, not on intron positions.  Even if "sliding"
  779. occurs, it is a more conservative test of intron positions to include all
  780. of the observed data than to use an additional assumption to amalgamate
  781. some of the observed data into hypothetical ancestral data.
  782.  
  783.  
  784. IV.B. ARRAYS: CREATING, CONVERTING, SAVING AND LOADING
  785.  
  786. IV.B.1.  Creating an array.
  787.  
  788. The scoring arrays used by ABaCUS are linear arrays of integer penalties
  789. associated with each possible intron position in a gene.  The penalties are
  790. assigned based on protein structural elements defined by the user.  For
  791. example, consider an imaginary protein of 20 amino acids.  This protein
  792. would be encoded by a gene with 20 codons, or 60 nucleotides.  Thus, there
  793. would be 59 inter-nucleotide positions at which an intron might be found.
  794. Suppose that the protein has two alpha helices, one encompassing residues
  795. 3-12 and the other residues 13-19.  Entering these boundaries into ABaCUS
  796. will produce the following array of scores for each intron position:
  797.  
  798. 00000011111111111111111111111111111011111111111111111111000
  799.  
  800. The array can be used as it is to score correspondences.  Imagine that
  801. there are introns at position 5-0, 13-2 and 16-0.  When scored by the above
  802. matrix, each of these introns would be assigned a score of 1 (introns in
  803. codons 1, 2 and 20 would receive a score 0, as well as introns at positions
  804. 3-0 and 13-0)
  805.  
  806. IV.B.2.  Converting an array.
  807.  
  808. For most purposes, the array will be converted using a different maximum
  809. penalty (i.e., greater than 1), which is done with the "c=convert" function
  810. in the array submenu.  With a maximum score of 9, the array shown in IV.B.1
  811. would look like this:
  812.  
  813. 00000012345678999999999999987654321012345678999987654321000
  814.  
  815. Using this array to score introns would be equivalent to deciding that the
  816. score for an intron will be the distance to the nearest inter-element
  817. region, up to a maximum of 9 bp (3 codons).
  818.  
  819. IV.B.3.  Saving, viewing and loading arrays.
  820.  
  821. Array files can be saved and loaded by ABaCUS.  The view command displays
  822. the array currently in memory, and calculates the average score for the
  823. array.  These procedures are simple and require no further explanation.
  824.  
  825. IV.C. BE CAREFUL WHEN ENTERING DATA
  826.  
  827. ABaCUS has some smart menu handling features, in that it usually does not
  828. carry out nonsense operations in response to menu choices by the user.  For
  829. instance, ABaCUS will not allow an attempt to draw a diagonal plot unless a
  830. crystal structure resides in memory.  Likewise, when responding to the
  831. "t=TEST" command, ABaCUS will give an error message if no set of gene data
  832. is ready to test; if one set of data is ready, ABaCUS will test that set;
  833. if both sets are ready, ABaCUS will prompt the user for a choice.
  834.  
  835. However, ABaCUS does not trap nonsense when the user is entering data on
  836. intron positions and boundaries of structural elements, or when the user is
  837. supplying parameters.  For instance, if the user enters intron positions in
  838. non-consecutive order, this will create nonsense in downstream events.
  839. Likewise, if the boundaries of structural elements entered by the user are
  840. inverted, this will create nonsense in downstream events.
  841.  
  842. For these reasons, it is recommended that the user enter all data and save
  843. them to files well before attempting to perform an analysis.  Immediately
  844. after entering data, view the data using the appropriate v=view function,
  845. check for obvious errors, then save the data to disk.  Check the resulting
  846. file for errors before proceeding with an analysis.  Carefully record the
  847. number of codons for a gene.  Be sure that sets of intron positions, sets
  848. of exon sizes, arrays, and atomic coordinates all match exactly in length.
  849.  
  850.  
  851. IV.D. LOADING ATOMIC COORDINATES FROM A PDB FILE
  852.  
  853. Some PDB files can be read directly by the program, but some of them have
  854. to be edited.  Specifically, ABaCUS will choke in the following cases:
  855.  
  856. a) for multi-subunit crystal structures, due to the optional "subunit"
  857. field, which contains a single letter ( "A", or "B", for instance).  Delete
  858. the data for one of the subunits, then remove the subunit designator from
  859. the remaining lines (i.e., use a text editor to search for " A " and
  860. replace it with "   ").
  861.  
  862. b) when the third and fourth fields run together due to long descriptors
  863. for alternative side chain conformations.  The solution to this uncommon
  864. problem is to separate the fields by inserting spaces.
  865.  
  866. The file reader only extracts data from the "CA" lines, for C-alpha
  867. carbons.  If the crystal structure has been read incorrectly, this should
  868. be obvious in the distance plot.  If necessary, troubleshoot the editing
  869. process by looking at the cryptic output file "calpha.xyz": this file
  870. (rewritten each time a crystal structure is entered) echoes the information
  871. from the crystal structure file that ABaCUS has read and successfully
  872. stored in memory.  Note that for its internal use, ABaCUS renumbers the
  873. residues in the order they are read.  The output file will retain the
  874. numbering in the original, even if it is non-consecutive.  For a 10- to
  875. 50-fold savings in disk space, throw out the successfully read PDB file and
  876. replace it with ABaCUS's version of the file (be sure to rename it, to
  877. anything other than "calpha.xyz", or it will be overwritten by ABaCUS).
  878.  
  879.  
  880. IV.E. GENERATING REFERENCE GENE DATA
  881.  
  882. IV.E.1.  Why not "null" gene data instead of "reference" gene data.
  883.  
  884. Speaking of a "null" hypothesis tends to imply that there is a single
  885. standard of nothingness or randomness against which the world can be judged
  886. to determine its somethingness or non-randomness.  The words "null" and
  887. "random" tend to obscure the fact that a "null" or "random" model often
  888. involves complex assumptions, such as the complex reference models used by
  889. ABaCUS.  Speaking of a reference model (instead of a "null" model) implies
  890. that we must be acutely concerned as to whether the form of the model and
  891. the parameters chosen are appropriate to serve as a reference for testing
  892. the sort of thing that we are interested in testing.
  893.  
  894. IV.E.2.  Logic of reference models.
  895.  
  896. Reference models are used to generate sets of reference genes that have
  897. some of the properties of the observed data (e.g., same distribution of
  898. exon sizes).  For the case of ABaCUS, the most important aspect of the
  899. reference algorithms is that they do not employ information on the protein
  900. structure.  That is, imagine that I launch ABaCUS, input intron positions
  901. for my favorite gene, and then generate reference intron positions by one
  902. of several models.  Since I haven't entered any other data, ABaCUS knows
  903. nothing about the protein structure, and therefore I can rest assured that
  904. the introns will be placed randomly with regard to the structure of the
  905. protein.
  906.  
  907. If the reference model accurately reflects the important properties of the
  908. observed intron data, then, the resulting reference hypothesis has the
  909. following form:
  910.  
  911. THE OBSERVED SET OF INTRON POSITIONS (or exon sizes) DOES NOT CORRESPOND TO
  912. PROTEIN STRUCTURE BETTER THAN IS EXPECTED AT RANDOM, GIVEN THE PROPERTIES
  913. OF THE OBSERVED POSITIONAL DISTRIBUTION OF INTRONS (observed size
  914. distribution of exons)
  915.  
  916. IV.E.3.  Implementation of Reference models.
  917.  
  918. Once an observed set of introns is in memory, reference sets of intron
  919. positions can be generated; once a set of observed (or inferred ancestral)
  920. exons are in memory, reference sets of exons can be generated.  The
  921. "r=REFERENCE" genes submenu calls five generators.  Each reference gene
  922. generator can create a user-specified number of reference genes, each of
  923. which is a set of either J intron positions (bp) or K exon sizes (in
  924. codons), where J and K are the numbers of observed introns and hypothetical
  925. exons currently in memory, respectively.  The user may specify hundreds or
  926. thousands of sets of reference exons or introns at a time (see IV.E.4
  927. regarding the number of sets to choose).  Output from the reference gene
  928. generators may be saved by the user, as described in section V.C.5.
  929.  
  930. IV.E.4.    Descriptions of Reference models.
  931.  
  932. IV.E.4.a.  Uniform random introns.
  933.  
  934. This function creates sets of uniformly distributed introns. The minimum
  935. distance between introns in a set is 1 bp (i.e., no position is chosen
  936. twice in a single set), unless the user specifies a higher number.  The
  937. option to change the minimum distance is useful for gaining an intuitive
  938. sense for the random likelihood of closely-spaced introns-- some authors
  939. have claimed that introns within a few bp of each must have arisen by some
  940. special process of intron "sliding", but this is not true.  The screen
  941. display, which shows the number of attempts needed to complete each set,
  942. reveals how very often a randomly distributed intron falls 0, 1, 2, 3, etc.
  943. positions away from a previously existing intron.
  944.  
  945. IV.E.3.b.  Introns by permuted inter-intronic distances.
  946.  
  947. This function temporarily converts the observed set of intron positions
  948. into a set of inter-intronic distances, permutes these numbers randomly to
  949. generate random sets, then converts them back into intron positions.  As
  950. with the function for permuting exons, large numbers of simulations should
  951. not be done from small numbers of intron positions (e.g., fewer than 10).
  952.  
  953. IV.E.3.c.  Lognormal exon sizes.
  954.  
  955. This function creates random exons with the same lognormal mean and
  956. standard deviation as the observed set of exons in memory.  Since most such
  957. sets of exons will not add up to the length of the observed gene, and since
  958. this condition is necessary, most sets of lognormal exons are discarded (as
  959. will be apparent from the display shown by this function). Imposing this
  960. condition might (one would suspect) distort the resulting distribution from
  961. its intended form, but no significant deviations are detectable in
  962. statistical tests.
  963.  
  964. IV.E.3.d. Permuted exon sizes.
  965.  
  966. This function creates successive random permutations of the observed order
  967. of exon sizes ('successive' meaning that each permutation is generated from
  968. the previous one, rather than from a common parental order).  This
  969. reference model is the one used by Gilbert and Glynias (1994).  Large
  970. numbers of simulations (>>100) should not be done from small numbers of
  971. exon sizes (e.g., fewer than 10), or the generation of identical and
  972. nearly-identical orders of exon sizes in different replicate exon sets will
  973. reduce the expected statistical reliability of the final result.  If the
  974. numbers of exon sizes is large, this is a good non-parametric reference
  975. model.
  976.  
  977. IV.E.3.e. Exponential exon sizes.
  978.  
  979. This function creates exponentially distributed exon sizes, with the option
  980. for low-end censoring.  It is not recommended in most cases, since in most
  981. cases the observed distribution of inter-intronic distances will not be
  982. exponential.  In particular, if "intron sliding" has been invoked (see
  983. section IV.A.5), an exponential distribution is invalid unless low-end
  984. censoring is applied to screen out any inter-intronic distances that would
  985. be prohibited in the observed set by the "sliding" rule (e.g., the use of
  986. an exponential distribution by Gilbert and Glynias, 1994, is invalid for
  987. this reason, among others).  Even with censoring invoked, the distribution
  988. of inter-intronic distances is usually much more like a lognormal
  989. distribution than an exponential one, unless there are large numbers of
  990. intron positions known for the gene (e.g., as in the case of GAPDH).
  991.  
  992. IV.E.4.  Number of reference sets to generate.
  993.  
  994. The number of reference sets to generate is based on the desired accuracy
  995. of the resulting P value, and is strictly limited by memory availability
  996. when running in the DOS environment.
  997.  
  998. IV.E.4.a.  Accuracy of the P value.  The P value is expected to have
  999. binomial variance, i.e.,
  1000.  
  1001. V = P * (1 - P) / (N - 1).
  1002.  
  1003. Imagine that 100 simulations have been done and two correspondence rules
  1004. have been tested.  Since only two tests have been done, the 5% critical
  1005. level is applicable.  Suppose that one test gives a P value of P = 5/100 =
  1006. 5%, the other of P = 20/100 = 20%.  These P values carry uncertainty: their
  1007. expected 95% confidence intervals are +/- 0.044 and +/- 0.080,
  1008. respectively.  One may be confident that the second result (P = 20%) is not
  1009. significant (i.e., it is extremely unlikely that this P value is really <
  1010. 0.05).  However, how does one interpret the first P value?  It could be
  1011. less than 1% (very significant!) or more than 9% (not significant at all!).
  1012. In such a case, one cannot make a reliable judgment about the status of the
  1013. reference hypothesis, because the P value itself carries too much
  1014. uncertainty. If 1000 simulations are performed instead, then the
  1015. probability might be found to have a more exact value of 0.043 or 0.078 or
  1016. 0.061 or 0.036-- in each of these cases the reliability of the P value
  1017. would be sufficient that its relationship to the 5% critical level, either
  1018. higher (0.062, 0.078) or lower (0.036, 0.042), is reliable.
  1019.  
  1020. IV.E.4.b.  Memory limitations.  Practical memory limitations are not an
  1021. issue except in the DOS environment (especially 286-based machines).  The
  1022. startup screen displays how much of the DOS standard 640 K block is
  1023. available for simulations, and makes an approximate calculation of the
  1024. total number of simulations that can exist in memory (exon sets and intron
  1025. sets combined) at any time.  Regular users who wish to generate more than
  1026. one thousand sets of reference genes with more than ca. 40 introns or exons
  1027. per set should move to a non-DOS environment.  DOS weenies can re-compile
  1028. ABaCUS without the graphics and with kMaxNumValues set to 1 + X (where X is
  1029. the maximum number of exons or introns needed per set) to maximize the
  1030. number of simulations possible.
  1031.  
  1032. IV.F. SCORING CORRESPONDENCES
  1033.  
  1034. IV.F.1.  Types of rules.  There are three general models for evaluating
  1035. correspondences:
  1036.  
  1037. 1. Centrality of intron-associated residues.
  1038. 2. Distance of intron positions to inter-element regions.
  1039. 3. Extensity of exon-encoded peptides.
  1040.  
  1041. The centrality and distance scores are assigned directly to intron
  1042. positions, while the third type of score (extensity) is assigned directly
  1043. to exons.  Centrality scores and extensity scores are based on measurements
  1044. of atomic coordinates-- thus they require a crystal structure.  The
  1045. distance scores are based on structural elements defined by the
  1046. user.
  1047.  
  1048. IV.F.2.  Common features of correspondence rules.
  1049.  
  1050. For ABaCUS, a "gene" is a set of exon sizes or intron positions.  For all
  1051. types of scoring rules, the score assigned to a gene is the average score
  1052. for the intron positions or exon sizes in the gene.  For all types of
  1053. rules, a lower score indicates greater conformity to the expectations of
  1054. Blake's conjecture (Blake, 1978) or the exon theory of genes as developed
  1055. by Go, Gilbert, and others (see references in Stoltzfus, et al., 1994).
  1056.  
  1057. IV.F.3.  Centrality scores.
  1058.  
  1059. Centrality scoring is done by choosing "c=centrality" from the "a=ATOMIC
  1060. COORDINATES" submenu.  Any observed or reference introns are scored using
  1061. the crystal structure in memory and a user-designated choice of scoring
  1062. rule.  The lowest scores are achieved by centrally located
  1063. introns/residues.   The scoring schemes implemented for centrality scoring
  1064. are:
  1065.  
  1066. 1.  intron score = percentage of  pairwise distances > cutoff; 
  1067. 2.  intron score = average of all pairwise distances; 
  1068. 3.  intron score = maximum of all pairwise distances; 
  1069. 4.  intron score = distance from center of mass of domain.
  1070.  
  1071. The first rule is somewhat similar to the intuitive rule used by Go (1981)
  1072. in proposing the boundaries of "modules" of hemoglobin.  The second rule is
  1073. similar to the rule implied by Figure 1 of Blake (1981).  Stoltzfus, et al.
  1074. 1994 use only rule #4, which we feel is the definitive rule for centrality.
  1075. For multidomain proteins, you will be prompted to enter the domain
  1076. boundaries when using this rule.  Specifically, the center of mass of each
  1077. domain is calculated, then introns are assigned a score equal to the
  1078. distance in Angstroms from the residue associated with the intron to the
  1079. center of mass of the domain in which it resides.
  1080.  
  1081. To implement centrality scores, an arbitrary choice must be made about how
  1082. to associate intron positions with residues in a crystal structure.  For
  1083. ABaCUS, the residue associated with an intron is defined as the residue
  1084. encoded by a codon that is split by the intron, or that is bounded on its
  1085. 5' end by the intron.
  1086.  
  1087. For information on centrality plots, see section V.C.4.
  1088.  
  1089.  
  1090. IV.F.4.  Distance scores.
  1091.  
  1092. Correspondences with regard to defined structural elements are analyzed by
  1093. using distance scores.  The complete set of all possible distance scores is
  1094. stored in any array.  Any number of arrays may be created by the user, to
  1095. represent secondary structures, domains, motifs, modules, etc.  Introns
  1096. from the observed set and any reference sets are scored by the distance
  1097. scoring array currently in memory when this scoring option is chosen.
  1098.  
  1099. There is a single option in the settings menu that affects the manner in
  1100. which distance scores are calculated (see V.C.9).
  1101.  
  1102. In essence, one uses distance scores to detect correspondences between
  1103. points on a line and segments of the line.  For instance, one may ask
  1104. whether introns in protein-coding gene fall between or within structural
  1105. elements, or whether introns in structural RNAs fall between or within
  1106. defined regions, such as base-paired regions or exposed regions.  This type
  1107. of scoring is readily adaptible to calculating the closeness or identity of
  1108. one set of points on a line with another set of points (e.g., how closely
  1109. does one set of introns match another set?).
  1110.  
  1111. IV.F.5.  Extensity scores.
  1112.  
  1113. Scoring by the extensity of exon-encoded peptides is done using the
  1114. "e=EXTENSITY" scores option of the atomic coordinates submenu.  Five
  1115. different scoring rules are implemented, some of which depend on a
  1116. user-supplied arbitrary cutoff value in Angstroms:
  1117.  
  1118. b (binary) score = 1 if any distance > cutoff; else score = 0; 
  1119. n (number) score = number of inter-C-alpha distances > cutoff;
  1120. a (average) score = average inter-C-alpha distance;
  1121. m (maximum) score = maximum inter-C-alpha distance;
  1122. r (radius) score = radius of gyration.
  1123.  
  1124. Each rule assigns scores to exons based on measurements on the atomic
  1125. coordinates of the residues encoded by each exon, using the crystal
  1126. structure in memory.
  1127.  
  1128. The first three rules, based on distance cutoffs, are intended as precise
  1129. versions of the inexact methods of Go (1981), Gilbert (1986, 1985) and
  1130. others, in which arguments are made based on the appearance of a diagonal
  1131. plots with distance cutoffs in the range of 23-28 Angstroms.  The first two
  1132. rules give somewhat erratic results.  The second rule is equivalent in
  1133. effect to the rule used by Gilbert and Glynias (1994; they assign to genes
  1134. the sum, rather than the average, of exon scores, but this difference would
  1135. not affect the final ranking of observed and reference scores).
  1136.  
  1137. Stoltzfus, et al. (1994) concentrate on the "maximum" (a.k.a. "diameter")
  1138. rule and the radius of gyration. The radius of gyration is a measure of
  1139. 3-dimensional dispersion, defined simply as the root mean square distance
  1140. of alpha carbons from the center of mass of the exon-encoded peptide.
  1141.  
  1142.  
  1143. IV.G. EVALUATING THE SIGNIFICANCE OF A CORRESPONDENCE
  1144.  
  1145. After each scoring of introns or exons, the results may be evaluated.  A
  1146. set of introns (or a set of exons) in memory carries only a single set of
  1147. scores at a time, from the most recent scoring.  The command "t=TEST" will
  1148. take the observed and reference scores in memory, calculate means and
  1149. standard deviations, and rank the observed score within the reference
  1150. scores. The mean of the standard deviation of exon scores within a
  1151. reference set is calculated, as well as the standard deviation of the mean
  1152. gene score.
  1153.  
  1154. A P value is calculated as the proportion of reference sets that score AS
  1155. LOW OR LOWER than the observed set.  This P value represents the chance of
  1156. obtaining a correspondence as good or better than the one observed, if the
  1157. reference hypothesis is true.  If the P value is less than 5% or 1%
  1158. (depending on the number of tests performed), then the reference hypothesis
  1159. may be false.
  1160.  
  1161. If the scores of the reference sets are normally distributed, then the
  1162. difference between the observed and reference means (expressed in standard
  1163. deviations of the reference mean) should be related to the P value by the
  1164. normal probability function (e.g., if P = 0.05, then the observed mean
  1165. should be lower than the reference mean by about 1.64 standard deviations
  1166. of the reference mean).  Scores derived by the centrality and extensity
  1167. rules are usually distributed roughly normally.  However, distance scores
  1168. assigned by arrays often have a skewed distribution, especially if a low
  1169. maximum score has been used to convert the array.
  1170.  
  1171. Note that every time the "t=TEST" command is successfully executed, a
  1172. description of a numbered experiment is stored in memory.  The experiment
  1173. list in memory continues to grow with each new experiment, and it can be
  1174. saved as explained below.
  1175.  
  1176.  
  1177. IV.H. SAVING RESULTS; FURTHER ANALYSIS OF SCORES; etc
  1178.  
  1179. Each time the "t=TEST" command is executed, an experimental test of a
  1180. hypothesis has been performed.  As a first approximation, each such test is
  1181. equally valid and therefore, in order to be rigorous, the conclusions drawn
  1182. from a set of tests should represent the results of all experiments, rather
  1183. than just "the ones that turned out right."  Failure to follow this
  1184. methodological imperative tends to lead to errors in which one or a few
  1185. "significant" results from a large set of equally valid tests are singled
  1186. out for special attention.  An example of this type of error can be found
  1187. in Go and Nosaka (1987) in which a subset of all available intron positions
  1188. is singled out for special comment because it shows a "significant"
  1189. correspondence.
  1190.  
  1191. In order to save the results of hypothesis-testing to disk, you must choose
  1192. "quit" from the main menu, and supply a name for the file to contain all
  1193. experiment summaries.  The summary writer was designed to save most of the
  1194. parameters necessary to replicate each experiment (its good to take notes,
  1195. though).   Short user-supplied comments can be added to the experiment
  1196. description in memory at the time the hypothesis is evaluated, and these
  1197. comments will be written to disk when the experiment summary is saved.
  1198.  
  1199. Under normal conditions, ABaCUS does not save detailed reference gene
  1200. data-- it saves the mean, standard deviation and ranking of the observed
  1201. sets relative to the reference score, and the rest is thrown away.  This
  1202. makes it impossible to analyze (for instance) the statistical distribution
  1203. of reference gene scores, or to ask other interesting questions, such as
  1204. "How low would an observed score have to be to rank in the lowest 5% or the
  1205. lowest 1%?".  However, questions such as these CAN be addressed if the user
  1206. takes special steps to save the relevant data.  There are three ways of
  1207. doing this, each of which may be desirable under different circumstances,
  1208. depending on the reason for saving the results:
  1209.  
  1210. 1)  If the reference introns or exons have been scored, the "save" function
  1211. will include the scores when it writes the intron positions or exon sizes
  1212. to disk.  If the reference introns or exons have been scored and evaluated,
  1213. the means and standard deviations will also be recorded.  The resulting
  1214. file can be large: a file with 1000 scored sets of reference genes, with 15
  1215. introns in each set, takes up 200 K.
  1216.  
  1217. 2)  Settings can be changed to turn on a file writer that records the mean
  1218. score for each reference set (only the mean for each set-- not the
  1219. individual exon or intron scores).  See section V.C.6.
  1220.  
  1221. 3)  The user may effectively "save" reference gene data by saving its
  1222. initial conditions.  See section V.C.10 for instructions on how to manually
  1223. enter a random number seed that can be used at a later date to regenerate
  1224. the same data.
  1225.  
  1226.  
  1227. IV.I. PLOTTING DIAGONAL PLOTS AND EXON PLOTS
  1228.  
  1229. IV.I.1.  Diagonal plots.
  1230.  
  1231. A diagonal plot, or C-alpha-C-alpha distance map, is a 2-dimensional
  1232. contour map of a 3-dimensional protein structure, based on the pairwise
  1233. distances between alpha-carbons, plotted on cartesian coordinates.  Many
  1234. diagonal plots that appear in the literature show three contours: very
  1235. short pairwise distances (e.g., < 12 Angstroms) in gray, very long pairwise
  1236. distances (e.g., > 28 Angstroms) in black, and intermediate distances in
  1237. white (e.g., Go, 1981).
  1238.  
  1239. IV.I.2.  Exon plots.
  1240.  
  1241. Exon plots are like diagonal plots, but they only show the distances between
  1242. residues encoded by the same exons.  The plot thus appears as a series of N
  1243. right triangles with their hypotenuses along the diagonal, where N is the
  1244. number of exons.  It is possible to make exon plots of both the inferred
  1245. ancestral set of exons, and reference sets of exons.  Exon plots are
  1246. sometimes useful for developing a nuts-and-bolts understanding of why
  1247. different gene structures achieve different extensity scores.
  1248.  
  1249. IV.I.3.  Plotting options.
  1250.  
  1251. ABaCUS is capable of making black & white distance plots (i.e., two
  1252. contours), or color distance plots with 16 contours.  For black & white
  1253. plots, a single cutoff value distinguishes close and distant inter-residue
  1254. distances.  For color plots, there is a scaleable relationship between the
  1255. 16-color palette and the distance between residues.  Also, color plots can
  1256. depict all distances (choose cutoff = 0.0 to do this), or only those
  1257. distances greater than an arbitrary cutoff value (e.g., 25 Angstroms).  The
  1258. settings menu explains how to alter settings to suit your interests.
  1259.  
  1260.  
  1261. ==========================================================================
  1262. V.  ADDITIONAL DETAILS
  1263. ==========================================================================
  1264.  
  1265. V.A.  HARD LIMITS ON PARAMETERS
  1266.  
  1267. Limits are set differently depending on whether or not the program is
  1268. compiled in DOS:
  1269.  
  1270. limit            DOS       non-DOS
  1271. __________      _____     ________
  1272.  
  1273. kMaxNameLength      14          30
  1274.  
  1275. kMaxArraySize   2400        4000
  1276.  
  1277. kMaxNumValues      26         101   
  1278.  
  1279. The first column of values is used if Compiled_in_DOS is #defined as 1 in
  1280. the header file "abacus.h"; the second column is used when Compiled_in_DOS
  1281. is set to 0.
  1282.  
  1283. The experienced user may wish to alter these limits.  kMaxNameLength
  1284. refers to the length of file names.  kMaxArraySize refers to the scoring
  1285. arrays used in distance scoring (the DOS limit of 2400 sites, or 800
  1286. codons, should be sufficient for most purposes).  kMaxNumValues is 1 + the
  1287. maximum number of intron positions or exon sizes per gene that you wish to
  1288. use.
  1289.  
  1290. There is no hard limit on the number of residues in a crystal structure or
  1291. on the length of the gene represented by a set of intron positions or exon
  1292. sizes.
  1293.  
  1294.  
  1295. V.B.  THE RANDOM NUMBER GENERATOR
  1296.  
  1297. The code for the uniform random number at the heart of ABaCUS's simulations
  1298. is taken from p. 282 of _Numerical Recipes in C_ (Press, et al., 1992; and
  1299. references therein).  This is the "ran2" long-period (about 10^18)
  1300. pseudo-random number generator, described by the authors as "the generator
  1301. of L'Ecuyer with Bays-Durham shffle and added safeguards".  It returns a
  1302. uniform random deviate between 0.0 and 1.0 (exclusive of the endpoint
  1303. values).
  1304.  
  1305. The routines for generating uniform intron positions and exponential exon
  1306. sizes, and the routines for permuting exon sizes and inter-intronic
  1307. distances rely directly on the uniform random number generator.  The
  1308. routine for generating lognormal exon sizes makes use of Box and Muller's
  1309. general method of converting uniform random deviates into normal deviates.
  1310.  
  1311. V.C.  EXPLANATION OF THE SETTINGS MENU
  1312.  
  1313. NOTE: The defaults for these settings are hard-coded.  Any changes made to
  1314. the settings are completely forgotten as soon as you quit the program.  I
  1315. probably should change the name to the "options" menu instead of the
  1316. "settings" menu.
  1317.  
  1318. V.C.1 Toggle between color and monochrome distance plots.  This is
  1319. self-explanatory.
  1320.  
  1321. V.C.2.  Toggle between single- and double-size distance plots.  Normally,
  1322. the distance plot of a protein R residues long is plotted on an R X R
  1323. plane.  That is, there is one pixel representing each Cartesian coordinate
  1324. of the diagonal plot.  If the "double-size" option is chosen, each
  1325. Cartesian coordinate is represented by 4 pixels-- a 2 X 2 square of pixels.
  1326. Choose this option to enhance viewing of small proteins, such as hemoglobin
  1327. or cytochrome C.
  1328.  
  1329. V.C.3.  Change color scale for distance plotting. The color constant is a
  1330. scalar used to convert an inter-C-alpha distance into a color code.  The
  1331. default value of the color constant is 2.7 and the conversion formula is
  1332.  
  1333. color = nextLowestIntegerValueOf( distance / colorConstant )
  1334.  
  1335. Each integer between 0 and 15 is associated with a color in the 4-bit color
  1336. palette, as follows:
  1337.  
  1338. 0=black                    8=dark gray
  1339. 1=blue                    9=light blue
  1340. 2=green                    10=light green
  1341. 3=cyan                    11=light cyan
  1342. 4=red                    12=light red
  1343. 5=magenta                    13=light magenta
  1344. 6=brown                    14=yellow
  1345. 7=light gray                15=white
  1346.  
  1347. For instance, if the distance between residues X and Y is 23.5 Angstroms
  1348. and the color constant is 2.7, then the value of distance/colorConstant is
  1349. 8.69, and the next-lowest integer value of 8.69 is 8.  Therefore, the color
  1350. at (X,Y) on the diagonal plot will be 8=dark gray.  If distance /
  1351. colorConstant > 15, a white pixel will be displayed, representing the
  1352. greatest distance class.
  1353.  
  1354. V.C.4.  Toggle on/off file with raw data for centrality plot.  A graphical
  1355. representation of the centrality scores for all residues in a crystal
  1356. structure is useful in attempting to understand the meaning of this type of
  1357. scoring.  The 'centrality plot' for a protein is a line graph representing
  1358. the centrality scores vs. the amino acid residue number. ABaCUS doesn't
  1359. actually make these plots, but it is capable of writing an output file with
  1360. all of the data (which can then be pasted into your favorite spreadsheet or
  1361. graphing program and used to make a centrality plot).  To make the output
  1362. file, go to the settings menu and turn on the option to write centrality
  1363. scores to disk.  Then load a crystal structure, and choose "c=centrality"
  1364. from the distance scoring submenu and choose the appropriate scoring
  1365. scheme, as though you were scoring a set of introns-- it doesn't matter if
  1366. there really aren't any introns in memory.  A file named "cplot.sco"
  1367. containing the centrality scores for all residues in the protein will be
  1368. written to disk.
  1369.  
  1370. V.C.5.  Change cryptic output from reference gene generators.  This is for
  1371. those who wish to examine details of the distribution of reference exon
  1372. sizes or intron positions.  Mainly, these options were useful when the
  1373. reference gene generators of ABaCUS were being tested for their ability to
  1374. produce the desired distributions.
  1375.  
  1376. V.C.6.  Change cryptic output of file with distribution of scores.  Once
  1377. this option is invoked, the complete distribution of reference scores (the
  1378. mean score for each reference set, not the individual exon or intron
  1379. scores) for each hypothesis that is evaluated will be appended to a file
  1380. called "nullscor.out".  Each addition to the file also contains the
  1381. observed score and descriptive comments that allow the user to match the
  1382. set of scores with the experiment summary written using the summary writer.
  1383.  
  1384. V.C.7.  Toggle between weighted and unweighted exon scores.  Exon scores
  1385. will be weighted inversely by the size of the exon if this option is turned
  1386. on.
  1387.  
  1388. V.C.8.  Toggle on/off pause to allow screen dumps of diagonal plots.
  1389. Normally, when a diagonal plot is being viewed, ABaCUS will show the plot
  1390. forever, or until the user presses a carriage return.  During this time,
  1391. ABaCUS will absorb key combinations that might otherwise be used to access
  1392. an automatic screen-dumping utility such as PCXDUMP.  Turning on the pause
  1393. simply puts the diagonal plot on a timer for about 20 seconds during which
  1394. a screen dump may be made before the diagonal plot disappears and the menu
  1395. reappears.
  1396.  
  1397. V.C.9.  Treat gene edges as element edges when converting arrays.  The
  1398. default settings for ABaCUS stipulate that the ends of a gene are treated
  1399. as the edges of an element.  That is, if an alpha-helix includes residues
  1400. 88-100 in a 100-residue protein, then an intron at (for example) position
  1401. 96-1 is scored as though the nearest inter-element region lies just beyond
  1402. the end of the gene-- just beyond codon 100-- rather than just before codon
  1403. 88.  We recommend not changing the default setting.  However, if the
  1404. alternative setting is chosen, be sure to have this option turned on *when
  1405. the array is converted* to a new maximum score, since the converter is the
  1406. function that implements this option.  After the array has been converted,
  1407. it doesn't matter what the setting is at any later when the array is
  1408. viewed, saved, loaded, or used to assign scores.  An array that has been
  1409. converted with the gene-edge=element-edge option turned off may be
  1410. converted back to its original form using the c=convert with the
  1411. option turned on.  Of course, changing this option only makes a
  1412. difference in the case of proteins that have a structural element extending
  1413. to an edge (e.g., the last helix of hemoglobin chains often extends to the
  1414. very last residue of the protein).
  1415.  
  1416. V.C.10.  Initialize random number generator with user-defined seed.
  1417. Normally, the random number generator is initialized at startup with
  1418. computer clock time (seconds elapsed since 0:00:00 Greenwich mean time, 1
  1419. Jan 1970) and this results in a unique set of numbers for each simulation
  1420. experiment.  However, if there is a need to generate exactly the same set
  1421. of data twice, a seed may be set manually, then re-entered for a perfect
  1422. replicate.  There would only be two reasons to do this: a) you are testing
  1423. the reproducibility of ABaCUS's routines to make sure there are no wierd
  1424. bugs getting into them; b) you are an anally retentive type wishing to have
  1425. complete reproducibility for the purposes of record-keeping.  In either
  1426. case, enter an unsigned 16-bit integer greater than 0, that is, a whole
  1427. number less than 65,536.  If exactly the same conditions (seed, reference
  1428. model, number of introns/exons, gene length) are used twice, then
  1429. exactly the same set of reference genes will be generated twice.
  1430.  
  1431. V.D.  HOW TO CONTACT THE PDB
  1432.  
  1433. Access to the Brookhaven Protein Data Bank (Bernstein, et al. 1977; Abola,
  1434. et al., 1987) is available by FTP or by Gopher (type 1, port 70, path 1/)
  1435. to pdb.pdb.bnl.gov (130.199.144.1).
  1436.  
  1437.  
  1438. ==========================================================================
  1439. VI.  REFERENCES
  1440. ==========================================================================
  1441.  
  1442. Abola, E.E., et al.  1987.  Protein Data Bank, pp. 107-132 in
  1443. _Crystallographic Databases - Information Content, Software Systems,
  1444. Scientific Applications_  ed. F.H. Allen, G. Bergerhoff, and R. Sievers
  1445. (Data Commission of the International Union of Crystallography, Cambridge,
  1446. 1987).
  1447.  
  1448. Banner, D.W., et al.  1975.  Nature 255: 609.
  1449.  
  1450. Bernstein, F.C., et al.  1977. J. Mol. Biol. 112: 535;
  1451.  
  1452. Blake, C.C.F.  1978.  Nature 273: 267.
  1453.  
  1454. Blake, C.C.F.  1983.  Nature 306: 535.
  1455.  
  1456. Dibb, N.J. and A.J. Newman.  1989.  EMBO J. 8 (7): 2015.
  1457.  
  1458. Doolittle, W.F.  1987.  Am. Nat. 130: 915.
  1459.  
  1460. Gilbert, W., M. Marchionni, G. McKnight.  1986.  Cell 46, 151.  See also D.
  1461. Straus and W. Gilbert, 1985.  Mol. Cell. Biol., 5(12): 3497; and N. Lonberg
  1462. and W. Gilbert.  1985.  Cell 40: 81.
  1463.  
  1464. Gilbert, W. and M. Glynias.  1994.  Gene 135: 137.
  1465.  
  1466. Go, M.  1981.  Nature 291: 90.
  1467.  
  1468. Go, M.  1983.  Proc. Natl. Acad. Sci U.S.A, 80: 1964.
  1469.  
  1470. Go, M. and Nosaka.  1987.  Cold Spring Harbor Symp. Quant. Biol. 52: 915.
  1471.  
  1472. Kemmerer, E.C. M. Lei and R. Wu.  1991a.  J. Mol. Evol. 32: 227.
  1473.  
  1474. Kemmerer, E.C. M. Lei and R. Wu.  1991b.  Mol. Biol. Evol. 8(2): 212.
  1475.  
  1476. Press, W.H. et al. 1992.  _Numerical Recipes in C_ (Cambridge Univ. Press,
  1477. London, 1992, 2nd ed.).
  1478.  
  1479. Raitt, D.C., R.E. Bradshaw and T.M. Pillar. 1994.  Mol. Gen. Gen. 242: 17.
  1480.  
  1481. Stoltzfus, A., et al.  1994.  Testing the Exon Theory of Genes: The
  1482. Evidence from Protein Structure.  Science XXX: XXX.
  1483.